Current implementations of multi-factor authentications over public networks first use security certificates to establish an authenticated channel between the entity seeking to be authenticated and the authentication server, and then transmit multiple factors through the authenticated channel. This approach relies on a third-party to provide the security certificates to enable the authentication of the channel before additional factors may be transmitted over the authenticated channel. For example, transport layer security (TLS) and secure socket layer (SSL) are cryptographic protocols designed to provide communication security over the Internet. However, TLS and SSL methodologies rely on validation of security certificates issued by certificate authorities or use a protocol such as the DNS-based authentication of named entities (DANE). Reliance on certificate authorities has the drawback that the certificate authorities may be controlled and tempered by other entities (such as the government). Additionally, the DANE protocol may be vulnerable to phishing attacks.